草庐IT

ios - NSMutableArray 线程安全

全部标签

javascript - 带有 websocket 的 Node.js socket.io

我是Node.js或websocket的初学者。我有问题:我的HTML代码:test"usestrict";vargniazdo=newWebSocket('ws://localhost:3000');gniazdo.onopen=function(){console.log('Połączono');};gniazdo.onmessage=function(m){console.log(m.data);};我的Node.js代码:vario=require('socket.io')(3000);io.on('connection',function(socket){console.l

javascript - NodeJS & Socket.IO : Emit a request event and get the response, 我应该何时/何地绑定(bind)监听器?

我目前想知道在这种情况下什么是最佳编程实践:假设我已将客户端连接到我的服务器。这个客户端要求服务器使用auth事件和他的用户名进行身份验证。socket=io();socket.emit('auth',"John");在这个简单的例子中,服务器响应一个带有用户ID的auth_succeed事件。io.on('connection',function(socket){socket.on('auth',function(username){socket.emit('auth_succeed',id);}}所以我的问题是,我应该在何时何地为客户端中的auth_succeed事件绑定(bind

javascript - Canvas 弧的 Agar.io 风格波纹效果

我真的很喜欢他们创造在线游戏agario的方式。我一直在想:“他们是如何为边缘创造这种涟漪效应的?”我能想到的有几点:1)边框由许多矢量点组成,因此允许灵活的边框动画。2)边框是预定义的gif动画。3)边缘周围有很多不可见的像素。它们围绕圆弧循环并激活其中的几组像素,因此产生了边界正在“收缩”和“缩回”的错觉。如何在HTML5canvas中完成这样的事情?您认为我的3个解决方案想法之一是否适用,还是比这更复杂? 最佳答案 您可以做的是围绕圆周重复绘制正弦波。得到绕圆任意Angular正弦波[x,y]点的方程为:varx=center

javascript - "new DOMParser.parseFromString"能比 "createElement"更安全吗?

我创建了一个脚本来尝试删除不安全的内容(我将它用于浏览器扩展):varstr="Hellomundo";CreateDOM(str);functionRemoveAttrs(target){varattrs=target.attributes,currentAttr;varvalidAttrs=["href","class","id","target"];for(vari=attrs.length-1;i>=0;i--){currentAttr=attrs[i].name;if(attrs[i].specified&&validAttrs.indexOf(currentAttr)===

javascript - javascript 游戏中的 ajax 安全性

在我的JavaScript游戏(使用jQuery制作)中,我将玩家位置存储在数据库中。当Angular色移动时,我只是向特定的URL,即I.E.发送请求。mysite.com/map/x1/y3(其中字符的位置为x=1,y=3)。该url将坐标发送到数据库并检查是否有其他玩家在我们附近。如果是,它还会发送带有该玩家名称和坐标的JSON对象。这是我的问题-如何保护它?有些人可以查看我的JavaScript代码并准备类似于mysite.com/map/x100/y234的url,它会将他“传送”到map的另一侧。 最佳答案 在浏览器中用

javascript - 带有 Socket.IO 的 NodeJS 延迟发送数据

我使用的示例来自Socket.IO主页(http://socket.io/)。它可以正常工作,但在发送数据和另一端接收数据之间存在巨大的延迟。我正在使用XAMPP,我的目录中有socket.html,并在我的浏览器中使用“http://localhost/socket.html”导航到它,我让服务器监听端口8080。服务器:vario=require('socket.io').listen(8080);io.sockets.on('connection',function(socket){socket.emit('news',{hello:'world'});socket.on('my

javascript - 安全地推送到数组,如何?忧不忧?

我认为这可能是一个幼稚的问题。我经常发现我有多个等待返回的xhr请求。我跟踪我在javascript数组中发出的请求。也就是说,当发出新请求时,我将其添加到数组中,然后在线程完成时将其从数组中删除。在多线程操作系统中,我会担心线程交叉,但我知道javascript是单线程的。我应该担心数组是否一致吗?很抱歉,如果有人询问并回答了这个问题。我查看并没有找到有关阵列安全推送的链接。 最佳答案 不,您不必担心。正如您所说,JavaScript是单线程的。 关于javascript-安全地推送到

javascript - 注释在所有主要环境中都是 100% 安全的吗?

注释是在解析之前从字面上从您的源代码中删除,还是在某些上下文中它们可以算作换行符并破坏连续性?'foo'.replace(/f/,'b')//f->b.replace(/o/,'a')//o->a.replace(/o/,'r')/*o->r*/;'foo'.replace(/x/,/*matches"x"*/'y');varfoo=(true!==false)?//bikeshed'bar':/*ifthey'reequal,whichtheywon'tbe,we'llwant'baz'*/'baz';你知道,因为他们说空格是“安全的”和“无关紧要的”之类的,但我们都知道这也有异常(

javascript - 设置Access-Control-Allow-Origin可能存在的安全问题

我看到设置“*”通配符存在安全风险,即Access-Control-Allow-Origin:"*"我想知道在设置具体域时是否存在任何安全风险,即Access-Control-Allow-Origin:http://www.example.com 最佳答案 CORSheader通常用于JavaScriptAJAX请求。浏览器有一个内置的安全机制,不允许您查询其他域,除非它们通过设置这些CORSheader明确允许。实际上并没有太大的安全风险。无论如何,您始终可以发送恶意请求。浏览器只是集体决定玩好。需要注意的一件事是您不一定总是要发

javascript - 在 Socket.IO 和 WS 之间共享 WebSocket 连接

为了能够在利用Socket.IO的RPC功能的同时发送二进制数据,我认为我可以同时使用Socket.IO和WS同一台服务器上的模块。我想知道是否可以使用同一个HTTP服务器,而不是打开完全独立的服务器来建立两个连接。是否可以同时为Socket.IO和WS仅使用一个通过http.createServer()创建的服务器?明确地说,我希望从客户端创建Socket.IO连接和常规WebSocket连接。以下代码在客户端创建协议(protocol)错误,大概是因为Socket.IO和WS都在尝试处理连接。varhttp=require('http');varserver=http.create